package LeetCode刷题;

/**
 * @program: Java_Study
 * @author: Xiaofan
 * @createTime: 2021-11-03 17:11
 * @description: Functions of this class is
 * 自顶向下递归，因此对于同一个节点，函数height 会被重复调用，导致时间复杂度较高。如果使用自底向上的做法，
 * 则对于每个节点，函数height 只会被调用一次。
 * 官方题解（自底向上）：*****更快！
 * class Solution {
 *     public boolean isBalanced(TreeNode root) {
 *         return height(root)>=0;
 *     }
 *     private int height(TreeNode root){
 *         if(root==null){
 *             return 0;
 *         }
 *         int leftLength=height(root.left);
 *         int rightLength=height(root.right);
 *         if(leftLength==-1||rightLength==-1||(leftLength-rightLength)>1||(leftLength-rightLength)<-1){
 *             return -1;
 *         }
 *         return Math.max(leftLength,rightLength)+1;
 *     }
 * }
 **/
public class NoNoNo平衡二叉树判断 {

}